package com.hopes.bizz.risk.statistic.vo;

import com.hopes.bizz.risk.common.constant.enums.RiskSysDictEnum;
import com.hopes.boss.admin.api.resolver.DictResolver;
import lombok.Data;

import java.io.Serializable;
import java.util.List;
import java.util.Map;
import java.util.Optional;

/**
 * @author yumr
 * @Description 风险管控措施分类统计VO
 * @time 2023/8/8 19:39
 */
@Data
public class RiskControlClassifyVO implements Serializable {

    private static final long serialVersionUID = -8468956214372403919L;

    /**
     * 管控措施分类
     */
    private String classify;

    /**
     * 管控措施 id 集合
     */
    private List<Long> controlIdList;

    /**
     * 管控任务类型分类 日常任务、 主要负责人任务、技术负责人任务、操作负责人任务
     */
    Map<String, Integer> controlTaskType;

    /**
     * 管控措施分类数量
     */
    public Integer getClassifyCount() {
        return Optional.ofNullable(controlIdList).map(List::size).orElse(0);
    }

    public String getClassifyStr() {
        return DictResolver.getItemLabelByValue(RiskSysDictEnum.risk_control_classify, this.getClassify());
    }

}
